package com.yxw.yx_hotel.service;

import com.yxw.yx_hotel.dto.QueryRoomReportDto;
import com.yxw.yx_hotel.dto.QueryStayReportDto;
import com.yxw.yx_hotel.vo.ReportRoomVo;
import com.yxw.yx_hotel.vo.ReportStayVo;
import com.yxw.yx_hotel.vo.ReportTitelVo;
import com.yxw.yxnet_cd_center.common.dto.PageVO;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 *  报表管理
 * @author liuxin
 * @date 2024.01.22
 */
public interface ReportService {

    /**
     * 查询宿舍统计列表
     * @param dto
     * @return
     */
    PageVO<ReportRoomVo> pageRoomReportList(QueryRoomReportDto dto);

    /**
     * 宿舍报表数据导出
     * @param response
     * @param dto
     */
    void exportRoomData(HttpServletResponse response, QueryRoomReportDto dto);

    /**
     * 查询住宿统计列表
     * @param dto
     * @return
     */
    PageVO<ReportStayVo> pageStayReportList(QueryStayReportDto dto);

    /**
     * 住宿报表数据导出
     * @param response
     * @param dto
     */
    void exportStayData(HttpServletResponse response, QueryStayReportDto dto);

    /**
     * 查询报表标题
     * @param titelType
     * @return
     */
    List<ReportTitelVo> getTitelList(Integer titelType);
}
